

from core.himesis import Himesis
import cPickle as pickle
from uuid import UUID

class HL2_F2F(Himesis):
    def __init__(self):
        """
        Creates the himesis graph representing the AToM3 model HL2_F2F.
        """
        # Flag this instance as compiled now
        self.is_compiled = True
        
        super(HL2_F2F, self).__init__(name='HL2_F2F', num_nodes=7, edges=[])
        
        # Add the edges
        self.add_edges([(4, 0), (0, 3), (5, 1), (6, 1), (2, 5), (3, 6)])
        # Set the graph attributes
        self["mm__"] = pickle.loads("""(lp1
S'SimpleDSLTransMM'
p2
a.""")
        self["name"] = """L2_F2F"""
        self["GUID__"] = UUID('4f68210c-28ce-42cf-8abc-7927c67eb6c9')
        
        # Set the node attributes
        self.vs[0]["mm__"] = """apply_contains"""
        self.vs[0]["GUID__"] = UUID('960e5360-1eff-4252-aa5f-bdb15043eb43')
        self.vs[1]["mm__"] = """Female_S"""
        self.vs[1]["name"] = """f"""
        self.vs[1]["GUID__"] = UUID('ee34451d-bcc7-47d3-bee4-a929c166f9fd')
        self.vs[2]["mm__"] = """MatchModel"""
        self.vs[2]["GUID__"] = UUID('841b7d0f-b9bc-43a5-b60a-ad24263da8ac')
        self.vs[3]["mm__"] = """Female_T"""
        self.vs[3]["name"] = """f"""
        self.vs[3]["GUID__"] = UUID('8c3a1388-e903-49ca-978a-912777ff059d')
        self.vs[4]["mm__"] = """ApplyModel"""
        self.vs[4]["GUID__"] = UUID('940b5abf-26ef-4a28-84de-7ead1ff8bd3f')
        self.vs[5]["mm__"] = """match_contains"""
        self.vs[5]["GUID__"] = UUID('c8051d14-32f6-493a-879b-0c4d04406f1f')
        self.vs[6]["mm__"] = """backward_link"""
        self.vs[6]["GUID__"] = UUID('43d1b32b-9aab-4475-b4d3-59f73e8e043f')

